1
Pengantar Pelajaran 3: Menghadapi Klasifikasi Non-Linier
EvoClass-AI002Lecture 3
00:00

Kita sedang melampaui keterbatasan model linier, yang kesulitan mengklasifikasikan data yang tidak dapat dipisahkan oleh garis lurus. Hari ini, kita menerapkan alur kerja PyTorch untuk membangun Jaringan Saraf Dalam (DNN) yang mampu belajar batas keputusan non-linier yang kompleks yang sangat penting untuk tugas klasifikasi dunia nyata.

1. Memvisualisasikan Kebutuhan Data Non-Linier

Langkah pertama kita adalah membuat dataset sintetik yang menantang, seperti distribusi dua bulan, untuk secara visual menunjukkan mengapa model linier sederhana gagal. Pengaturan ini mendorong kita menggunakan arsitektur dalam untuk mendekati kurva rumit yang diperlukan untuk memisahkan kelas-kelas tersebut.

Sifat Data

  • Struktur Data: Fitur data sintetik (misalnya, $1000 \times 2$ untuk $1000$ sampel dengan 2 fitur).
  • Jenis Output: Nilai probabilitas tunggal, sering kali torch.float32, yang mewakili keanggotaan kelas.
  • Tujuan: Untuk menciptakan batas keputusan melengkung melalui komputasi berlapis.
Kekuatan Aktivasi Non-Linier
Prinsip utama DNN adalah pengenalan non-linieritas pada lapisan tersembunyi melalui fungsi seperti ReLU. Tanpa fungsi-fungsi ini, menumpuk lapisan hanya akan menghasilkan satu model linier besar, terlepas dari kedalaman.
data_setup.py
TERMINALbash — classification-env
> Ready. Click "Run" to execute.
>
TENSOR INSPECTOR Live

Run code to inspect active tensors
Question 1
What is the primary purpose of the ReLU activation function in a hidden layer?
Introduce non-linearity so deep architectures can model curves
Speed up matrix multiplication
Ensure the output remains between 0 and 1
Normalize the layer output to a mean of zero
Question 2
Which activation function is required in the output layer for a binary classification task?
Sigmoid
Softmax
ReLU
Question 3
Which loss function corresponds directly to a binary classification problem using a Sigmoid output?
Binary Cross Entropy Loss (BCE)
Mean Squared Error (MSE)
Cross Entropy Loss
Challenge: Designing the Core Architecture
Integrating architectural components for non-linear learning.
You must build a nn.Module for the two-moons task. Input features: 2. Output classes: 1 (probability).
Step 1
Describe the flow of computation for a single hidden layer in this DNN.
Solution:
Input $\to$ Linear Layer (Weight Matrix) $\to$ ReLU Activation $\to$ Output to Next Layer.
Step 2
What must the final layer size be if the input shape is $(N, 2)$ and we use BCE loss?
Solution:
The output layer must have size $(N, 1)$ to produce a single probability score per sample, matching the label shape.